<!DOCTYPE html>
<html lang="zh" xmlns:th="http://www.thymeleaf.org">
<head>
    <th:block th:include="include :: header('修改产品')"/>
    <th:block th:include="include :: bootstrap-fileinput-css"/>
    <th:block th:include="include :: summernote-css"/>
    <th:block th:include="include :: select2-css"/>
</head>
<body class="white-bg">
<div class="wrapper wrapper-content animated fadeInRight ibox-content">
    <form class="form-horizontal m" id="form-product-edit" th:object="${product}">
        <input name="id" th:field="*{id}" type="hidden">
        <div class="col-xs-12">
            <div class="form-group">
                <label class="col-sm-3 control-label">分类id：</label>
                <div class="col-sm-8">
                    <select name="categoriesId" class="form-control">
                        <option th:each="item : ${productCategoriesList}" th:text="${item.name}" th:value="${item.id}" th:field="*{categoriesId}"></option>
                    </select>
                </div>
            </div>
        </div>
        <div class="col-xs-12">
            <div class="form-group">
                <label class="col-sm-3 control-label">编码：</label>
                <div class="col-sm-8">
                    <input name="encode" th:field="*{encode}" class="form-control" type="text">
                </div>
            </div>
        </div>
        <div class="col-xs-12">
            <div class="form-group">
                <label class="col-sm-3 control-label">标题：</label>
                <div class="col-sm-8">
                    <input name="title" th:field="*{title}" class="form-control" type="text">
                </div>
            </div>
        </div>
        <div class="col-xs-12">
            <div class="form-group">
                <label class="col-sm-3 control-label">描述：</label>
                <div class="col-sm-8">
                    <input name="description" th:field="*{description}" class="form-control" type="text">
                </div>
            </div>
        </div>
        <div class="col-xs-12">
            <div class="form-group">
                <label class="col-sm-3 control-label">图片地址，集合JSON，第一个是封面：</label>
                <div class="col-sm-8">
                    <input type="hidden" id="picturesPath" name="picturesPath" th:field="*{picturesPath}">
                    <div class="file-loading">
                        <input class="form-control file-upload" id="multipleFile" name="files" type="file" multiple>
                    </div>
                </div>
            </div>
        </div>
        <div class="col-xs-12">
            <div class="form-group">
                <label class="col-sm-3 control-label">详情：</label>
                <div class="col-sm-8">
                    <input type="hidden" class="form-control" th:field="*{details}">
                    <div class="summernote" id="details"></div>
                </div>
            </div>
        </div>
        <div class="col-xs-12">
            <div class="form-group">
                <label class="col-sm-3 control-label">附加信息：</label>
                <div class="col-sm-8">
                    <input type="hidden" class="form-control" th:field="*{additionalInfo}">
                    <div class="summernote" id="additionalInfo"></div>
                </div>
            </div>
        </div>
        <div class="col-xs-12">
            <div class="form-group">
                <label class="col-sm-3 control-label">销量：</label>
                <div class="col-sm-8">
                    <input name="salesVolume" th:field="*{salesVolume}" class="form-control" type="text">
                </div>
            </div>
        </div>
        <div class="col-xs-12">
            <div class="form-group">
                <label class="col-sm-3 control-label">状态：</label>
                <div class="col-sm-8">
                    <select name="status" class="form-control" th:with="type=${@dict.getType('applet_status')}">
                        <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" th:field="*{status}"></option>
                    </select>
                </div>
            </div>
        </div>
    </form>
</div>
<th:block th:include="include :: footer"/>
<th:block th:include="include :: bootstrap-fileinput-js"/>
<th:block th:include="include :: summernote-js"/>
<th:block th:include="include :: select2-js"/>
<script th:inline="javascript">

    let prefix = ctx + "applet/product";

    $("#form-product-edit").validate({
        focusCleanup: true
    });

    function submitHandler() {
        if ($.validate.form()) {
            $.operate.save(prefix + "/edit", $('#form-product-edit').serialize());
        }
    }

    $("#multipleFile").fileinput({
        uploadUrl: prefix + '/uploads',
        initialPreviewAsData: true,
        initialPreview: [[${pictures}]],
        autoReplace: true,
        uploadAsync: false
    }).on('filebatchuploadsuccess', function (event, data, previewId, index) {
        console.log(data.response)
        $("#picturesPath").val(data.response.urls)
    }).on('fileremoved', function (event, id, index) {
        $("input[name='" + event.currentTarget.id + "']").val('')
    })

    $(function () {
        $('.summernote').each(function (i) {
            $('#' + this.id).summernote({
                lang: 'zh-CN',
                dialogsInBody: true,
                callbacks: {
                    onChange: function (contents, $edittable) {
                        $("input[name='" + this.id + "']").val(contents);
                    },
                    onImageUpload: function (files) {
                        let obj = this;
                        let data = new FormData();
                        data.append("file", files[0]);
                        $.ajax({
                            type: "post",
                            url: prefix + "/upload",
                            data: data,
                            cache: false,
                            contentType: false,
                            processData: false,
                            dataType: 'json',
                            success: function (result) {
                                if (result.code == web_status.SUCCESS) {
                                    $('#' + obj.id).summernote('insertImage', result.url);
                                } else {
                                    $.modal.alertError(result.msg);
                                }
                            },
                            error: function (error) {
                                $.modal.alertWarning("图片上传失败。");
                            }
                        });
                    }
                }
            });
            let content = $("input[name='" + this.id + "']").val();
            $('#' + this.id).summernote('code', content);
        })
    });
</script>
</body>
</html>